home *** CD-ROM | disk | FTP | other *** search
- n egablank.com
- a
- jmp 0153 ; jmp initial
- dw 0, 0
- dw 0, 0
- dw 0
- cs: ; newint8:
- cmp wo [010a],+00 ; check countdown
- jz 0122 ; if zero, donothing
- cs:
- dec wo [010a] ; decrement countdown
- jnz 0122 ; if not 0, donothing
- push ax
- mov al,00 ; byte to turn off
- call 0142 ; call onoff
- pop ax
- cs:
- jmp far [0102] ; jmp oldint8
- cs: ; newint9:
- cmp wo [010a],+00 ; check countdown
- jnz 0136 ; if not 0, ok
- push ax
- mov al,20 ; byte to turn on
- call 0142 ; call onoff
- pop ax
- cs: ; ok:
- mov wo [010a],2000 ; set countdown
- cs:
- jmp far [0106] ; jmp oldint9
- push dx ; onoff:
- push ax
- mov dx,03ba ; reset flip-flop
- in al,dx ; for monochrome
- mov dx,03da ; reset flip-flop
- in al,dx ; for color
- mov dx,03c0 ; attribute port
- pop ax
- out dx,al ; turn on or off
- pop dx
- ret
- mov ax,3508 ; initial:
- int 21
- cs:
- mov [0102],bx ;save oldint8
- cs:
- mov [0104],es
- mov dx,010c ; set newint8
- mov ax,2508
- int 21
- mov ax,3509
- int 21
- cs:
- mov [0106],bx ; save oldint9
- cs:
- mov [0108],es
- mov dx,0127 ; set newint9
- mov ax,2509
- int 21
- mov dx,0153 ; bytes for resident
- int 27 ; terminate
-
- r cx
- 86
- w
- q
-